挂起 & 激活
当一个流程定义被挂起后,如果再去尝试启动一个流程,那么就会抛一个异常ActivitiException
, 测试代码如下:
1 | package com.kangyonggan.acti; |
运行挂起方法后, 再运行启动工作流的方法抛的异常如下:
1 | org.activiti.engine.ActivitiException: Cannot start process instance. Process definition 员工请假申请 (id = LeaveProcess:1:4) is suspended |
- 重复挂起也会抛异常:org.activiti.engine.ActivitiException: Cannot set suspension state ‘suspended’ for ProcessDefinitionEntity[LeaveProcess:1:4]’: already in state ‘suspended’.
- 重复激活也会抛异常:org.activiti.engine.ActivitiException: Cannot set suspension state ‘active’ for ProcessDefinitionEntity[LeaveProcess:1:4]’: already in state ‘active’.
查询接口
需求:部门经理想查询张三的请假申请。
1 | package com.kangyonggan.acti; |
尽管activiti提供的api已经很强大很完善了,但是任然满足不了脑洞大开的需求。比如:部门经理想查询张三和李四的请假申请。
在activiti现有的api中我是没找到这种api,如下图:
也许有其他曲线救国的方法,在此不多研究,我想说的是,如果api中没有提供方法,我们可以使用本地查询,代码如下:
1 | package com.kangyonggan.acti; |